package com.qulai.amazon_us.service.amazon_us;

import java.util.List;
import com.qulai.amazon_us.domain.amazon_us.AmazonUsRecord;
import com.qulai.amazon_us.domain.amazon_us.bo.AmazonUsRecordExportBo;
import com.qulai.amazon_us.domain.amazon_us.dto.AmazonUsRecordDto;

/**
 * 记录明细Service接口
 * 
 * @author hunan
 * @date 2025-01-05
 */
public interface IAmazonUsRecordService 
{
    /**
     * 查询记录明细
     * 
     * @param id 记录明细主键
     * @return 记录明细
     */
//    public AmazonUsRecord selectAmazonUsRecordById(Long id);

    /**
     * 查询记录明细: 分表后的查询
     *
     * @param id 记录明细主键
     * @return 记录明细
     */
    public AmazonUsRecord selectAmazonUsRecordByShopAndId(AmazonUsRecord amazonUsRecord);


//    public AmazonUsRecord selectAmazonUsRecordByAsin(String asin, String shop);

    /**
     * 根据asin 拿图片和文案： 分表之后的版本
     *
     */
    public AmazonUsRecord selectAmazonUsRecordByAsin_v2(String asin, String shop);

    /**
     * 查询记录明细列表
     * 
     * @param amazonUsRecord 记录明细
     * @return 记录明细集合
     */
//    public List<AmazonUsRecord> selectAmazonUsRecordList(AmazonUsRecord amazonUsRecord);



    /**
     * 查询记录明细列表: 分表之后查询
     *
     * @param amazonUsRecord 记录明细
     * @return 记录明细集合
     */
    public List<AmazonUsRecord> selectAmazonUsRecordList_v2(AmazonUsRecordDto amazonUsRecord);
    List<AmazonUsRecordExportBo> exportAmazonUsRecordList(AmazonUsRecordDto amazonUsRecord);

    /**
     * 查询记录明细总数: 分表之后查询
     *
     * @param amazonUsRecord 记录明细
     * @return 记录明细集合
     */
    public Long countAmazonUsRecordList_v2(AmazonUsRecordDto amazonUsRecord);


    /**
     * 新增记录明细
     * 
     * @param amazonUsRecord 记录明细
     * @return 结果
     */
    public int insertAmazonUsRecord(AmazonUsRecord amazonUsRecord);

    /**
     * 修改记录明细
     * 
     * @param amazonUsRecord 记录明细
     * @return 结果
     */
    public int updateAmazonUsRecord(AmazonUsRecord amazonUsRecord);


    /**
     * 修改记录明细: 分表后修改
     *
     * @param amazonUsRecord 记录明细
     * @return 结果
     */
    public int updateAmazonUsRecord_v2(AmazonUsRecord amazonUsRecord);

    /**
     * 批量删除记录明细
     * 
     * @param ids 需要删除的记录明细主键集合
     * @return 结果
     */
//    public int deleteAmazonUsRecordByIds(Long[] ids);

    /**
     * 删除记录明细信息
     * 
     * @param id 记录明细主键
     * @return 结果
     */
    public int deleteAmazonUsRecordById(Long id);
}
